const tokenUtil = require('./tokenUtil')
const baseConfig = {
  baseURL: 'https://xit-edu.cn/2411xgtourapi/system/',
  timeout: 20000,
}

function requestRe(url, method, data) {
  return new Promise((resolve, reject) => {
   
    wx.request({
      
      url: baseConfig.baseURL + url,
      data: data,
      header: {
        'Content-Type': 'application/json',
        'Authorization': tokenUtil.getToken()
      },
      method: method,
      timeout: 15000,
      success: (result) => {
        wx.hideLoading()
        // console.log(result)
        const data = result.data;
        if (data.code == 200) {
          // console.log(data)
          resolve(data); // 如果请求成功且业务逻辑判断通过（这里是code为200），则将数据传递给resolve
        } else if (data.code == 401) {
          wx.showModal({
            title: '是否登录',
            content: '登录体验完整功能',
            complete: (res) => {
              if (res.cancel) {
                reject(res);
              }
          
              if (res.confirm) {
                wx.reLaunch({
                  url: '/pages/home/home',
                })
                   tokenUtil.login()
              }
            }
          })
       
        } else {
          // console.log(result)
          reject(data);
        }
      },
      fail: (err) => {
        wx.hideLoading()
        console.log(err)
        reject(err); // 如果请求失败，直接将错误信息传递给reject
      },
      complete: (res) => {
        wx.hideLoading()
        // 这里可根据需求添加一些在请求完成时不管成功失败都要执行的逻辑
      }
    });
  });
}

module.exports = {
  requestRe
}